1
硬體取捨:SRAM 與 DRAM 架構
AI031Lesson 6
00:00

階層結構的基礎

記憶體階層結構依賴於以下兩者之間的權衡 靜態隨機存取記憶體(SRAM)動態隨機存取記憶體(DRAM)。SRAM 使用一個由六個電晶體組成的 雙穩態記憶體單元。想像一個倒置的擺桿:它在兩個位置上是穩定的,但在中間位置則是 亞穩定 狀態。這種雙穩態特性使 SRAM 具有高速、高成本且對干擾不敏感的特點。相反地,DRAM 則以微小電容器中的電荷來儲存位元(約 30 × 10⁻¹⁵ 法拉)。由於電荷會洩漏,因此 DRAM 速度較慢,必須持續刷新。

DRAM 組織與匯流排交易

為減少接腳數量,DRAM 的位元被分割成 $d$ 個 超細胞 的 $r \times c$ 網格,其中 $rc=d$。存取資料需要兩個步驟: 記憶體控制器 發送一個 RAS(列存取觸發信號),將一列移至列緩衝區,接著再發送一個 CAS(欄存取觸發信號)。這解釋了為什麼 sumarraycols 本質上較慢:它反覆錯過列緩衝區。

資料傳輸

資料透過 匯流排交易 跨越 系統匯流排記憶體匯流排,並由 I/O 橋接器。一個 movq A, %rax 指令(讀取交易)會觸發橋接器將中央處理器的請求轉換為 DRAM 的網格訊號。

系統匯流排記憶體匯流排中央處理器I/O 橋接器主記憶體DRAM 網格
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>